The required libraries are loaded - RomicsProcessor written by Geremy Clair (2023) is used to perform traceable transformation and statistics to the dataset. - proteinMiniOn written by Geremy Clair (2023) is used to extract fasta information and to perform gene ontology and KEGG pathways enrichment analysis. - DT is used to display enrichment tables.

library(RomicsProcessor)
library(ProteinMiniOn)
library(DT)

1 Fasta and protein ontologies download using ‘Protein Mini-On’

The fasta file was downloaded on october 12th, 2022 from Uniprot for the human proteome.

if(!file.exists("./03_output_files/Uniprot_Homo_sapiens_proteome_UP000005640_2022_10_12.fasta")){
    download_UniProtFasta(proteomeID = "UP000005640",reviewed = F,export = TRUE, file="./03_output_files/Uniprot_Homo_sapiens_proteome_UP000005640_2022_10_12.fasta")
}
    UniProtFasta_info<-UniprotFastaParser(file = "./03_output_files/Uniprot_Homo_sapiens_proteome_UP000005640_2022_10_12.fasta")
## [1] "./03_output_files/Uniprot_Homo_sapiens_proteome_UP000005640_2022_10_12.fasta"
    write.csv(UniProtFasta_info, "./03_output_files/UniProtFasta_info.csv")

For each entry, ‘Protein Mini-On’ was use to download Gene Ontology (GO) terms and KEGG ids associated with the proteins. This upload was performed the exact same day as the download of the fasta file was done to ensure that the IDs will be identical as the ones present in the fasta file used).

if(file.exists("./03_output_files/UniprotTable_Homo_sapiens_proteome_UP000005640_2022_10_12.csv")){
  UniProtTable<-read.csv("./03_output_files/UniprotTable_Homo_sapiens_proteome_UP000005640_2022_10_12.csv")
  }else{
  download_UniProtTable(proteomeID = "UP000005640",reviewed = F)
  write.csv(UniProtTable,("./03_output_files/UniprotTable_Homo_sapiens_proteome_UP000005640_2022_10_12.csv"),row.names=FALSE)
  }

‘Protein-Mini-on’ was then used to generate a table (UniProtTable) containing the list of GOs and their associated protein IDs

if(file.exists("./03_output_files/UniProtTable_GO.csv")){
  UniProtTable_GO<-read.csv(file="./03_output_files/UniProtTable_GO.csv")
}else{
generate_UniProtTable_GO()
write.csv(UniProtTable_GO,file="./03_output_files/UniProtTable_GO.csv",row.names=FALSE)
}

‘Protein-Mini-on’ was used to download similar information from KEGG for the Pathways associated with each protein

if(file.exists("./03_output_files/UniProtTable_KEGG.csv")){
  UniProtTable_KEGG<-read.csv(file="./03_output_files/UniProtTable_KEGG.csv")
}else{
generate_UniProtTable_KEGG()
write.csv(UniProtTable_KEGG,file="./03_output_files/UniProtTable_KEGG.csv",row.names=FALSE)
}

‘Protein-Mini-on’ was used to download similar information from REACTOME for the Pathways associated with each protein

if(file.exists("./03_output_files/UniProtTable_REACTOME.csv")){
  UniProtTable_REACTOME<-read.csv(file="./03_output_files/UniProtTable_REACTOME.csv")
}else{
generate_UniProtTable_REACTOME()
write.csv(UniProtTable_REACTOME,file="./03_output_files/UniProtTable_REACTOME.csv",row.names=FALSE)
}

2 Load dataset

The data and metadata were loaded and used to create a romics_object

data_TMT<-extractMaxQuant(file = "./01_source_files/proteinGroups.txt",quantification_type = "TMT",cont.rm = T,site.rm = T,rev.rm = T)
## [1] "77  Proteins were removed (protein(s) only identified by site,contaminant(s),reverse hit(s))"
## [1] "TMT reporter intensity was used."
MaxQuant_IDs<-extractMaxQuantIDs(file = "./01_source_files/proteinGroups.txt",cont.rm = T,site.rm = T,rev.rm = T)
## [1] "77  Proteins were removed (protein(s) only identified by site,contaminant(s),reverse hit(s))"
metadata<-read.csv("01_source_files/metadata.csv")
colnames(data_TMT)<-colnames(metadata)<-gsub(".bpd","_BPD",colnames(metadata))

#the ids were modified to only contain a representative UniProt accession number (the rest of the information is stored in the mmaxQuant ID anyhow)
data_TMT[,1]<-gsub(";.*","",data_TMT[,1])
data_TMT[,1]<-gsub("sp\\|","",data_TMT[,1])
data_TMT[,1]<-gsub("\\|.*","",data_TMT[,1])

MaxQuant_IDs[,2]<-gsub(";.*","",MaxQuant_IDs[,2])
MaxQuant_IDs[,2]<-gsub("sp\\|","",MaxQuant_IDs[,2])
MaxQuant_IDs[,2]<-gsub("\\|.*","",MaxQuant_IDs[,2])

MaxQuant_IDs<-cbind(representative_ID=data_TMT[,1], MaxQuant_IDs)

romics_TMT<-romicsCreateObject(data_TMT,metadata,main_factor = "Disease_status")
romics_TMT<-romicsSampleNameFromFactor(romics_TMT,factor = "Sample_name")

3 Data preprocessing

The missingness of the TMT16plex channels was plotted

romics_TMT<-romicsZeroToMissing(romics_TMT)
romicsPlotMissing(romics_TMT)

The data was log2 transformed and the boxplot were plotted

romics_TMT<-log2transform(romics_TMT)
distribBoxplot(romics_TMT)

The empty channels were removed

romics_TMT<-romicsSubset(romics_TMT,subset = c("Empty"),type = "drop",by = "level",factor = "Disease_status")
distribBoxplot(romics_TMT)

and the data was median centered

romics_TMT<-medianNormSample(romics_TMT)
distribBoxplot(romics_TMT)

Only the proteins for which 70 % of quantitative values were available for a single donor group were conserved

romics_TMT<-romicsFilterMissing(romics_TMT,percentage_completeness = 70,main_factor = "main")
## [1] "6 rows were removed for the data"
## [1] "Based on the minimum completeness set at 70%"
## [1] "at least the following number of sample(s) containing data was required:"
## ctrl eBPD hBPD 
##    5    3    3 
## [1] "5740/5746 features remained after filtering (99.9%)."
romicsPlotMissing(romics_TMT)

The missing values were then imputed using the Perseus method (tyranova et al. 2016)

imputeMissingEval(romics_TMT)

romics_TMT<-imputeMissing(romics_TMT)

The PCA was then plotted

#PCA plot prior batch effect correction
pca_results<-romicsPCA(romics_TMT)
indPCAplot(romics_TMT,plotType = "percentage",label = T)

indPCAplot(romics_TMT,plotType = "individual",label = T)

indPCA3D(romics_TMT)

4 Statistics

The means, stdev, and zscores were calculated.

romics_TMT<-romicsMean(romics_TMT)
## [1] "The Statistics layer was added to your object"
## [1] "Means columns (*_mean) were added to the statistics"
romics_TMT<-romicsSd(romics_TMT)
## [1] "The standard deviation columns (*_sd) were added to the statistics"
romics_TMT<-romicsZscores(romics_TMT)
## [1] "Z_score_ columns were added to the statistics"

ANOVA and Student’s T.test were performed.

romics_TMT<-romicsTtest(romics_TMT,reverse_order = T)
## [1] "T_test columns were added to the statistics"
romics_TMT<-romicsTtest(romics_TMT,reverse_order = F)
## [1] "T_test columns were added to the statistics"
romics_TMT<-romicsANOVA(romics_TMT)
## [1] "The ANOVA columns (ANOVA_p and ANOVA_padj) were added to the statistics"

The heatmap of the proteins passing the ANOVA was plotted, and extract hclust was extracted to perform enrichment analysis on the two main protein clusters.

romicsHeatmap(romics_TMT, ANOVA_filter = "p",p=0.05,sample_hclust = F,variable_hclust_number = 2)

romics_TMT<-romicsVariableHclust(romics_TMT,clusters = 2,plot=F, ANOVA_filter = "p",p = 0.05)
## [1] "The columns hclust_clusters was added to the statistics"

T.test volcano plots were generated

romicsVolcano(romics_TMT,min_fold_change = 0)
## [1] "'stat_type' was missing 't.test' were used by default"

5 Enrichment analyses

The enrichments were performed on the two main clusters of the heatmap (ANOVA p<0.05)

enrichments_ANOVA<-romicsEnrichement(romics_TMT,cluster_filter = "hclust_clusters")
## [1] "Your <query> contained 0 UniProt_IDs and 515 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 515 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 515 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 253 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 253 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 253 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
enrichments_ANOVA_filtered<-enrichments_ANOVA[enrichments_ANOVA$pval<0.05&enrichments_ANOVA$fold_change>1,]
datatable(enrichments_ANOVA)
write.table(enrichments_ANOVA_filtered,file = "03_output_files/enrichments_ANOVA_filtered.txt",row.names = F,sep="\t")

Enrichment Analysis is performed on the proteins modulated in the different groups.

up_eBPD_vs_ctrl<-enrfilter(romicsEnrichement(romics_TMT,statCol_filter = "eBPD_vs_ctrl_Ttest_p" ,statCol_text = "<0.05",statCol_filter2 = "log(eBPD/ctrl)",statCol_text2 = ">0",enrichment_function = "EASE",type = c("GO", "KEGG", "REACTOME") ),pval = 0.05,foldchange = 1,min_feature = 2)
## [1] "Your <query> contained 0 UniProt_IDs and 187 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 187 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 187 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
down_eBPD_vs_ctrl<-enrfilter(romicsEnrichement(romics_TMT,statCol_filter = "eBPD_vs_ctrl_Ttest_p" ,statCol_text = "<0.05",statCol_filter2 = "log(eBPD/ctrl)",statCol_text2 = "<0",enrichment_function = "EASE",type = c("GO", "KEGG", "REACTOME") ),pval = 0.05,foldchange = 1,min_feature = 2)
## [1] "Your <query> contained 0 UniProt_IDs and 534 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 534 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 534 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
up_eBPD_vs_hBPD<-enrfilter(romicsEnrichement(romics_TMT,statCol_filter = "eBPD_vs_hBPD_Ttest_p" ,statCol_text = "<0.05",statCol_filter2 = "log(eBPD/hBPD)",statCol_text2 = ">0",enrichment_function = "EASE",type = c("GO", "KEGG", "REACTOME") ),pval = 0.05,foldchange = 1,min_feature = 2)
## [1] "Your <query> contained 0 UniProt_IDs and 138 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 138 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 138 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
down_eBPD_vs_hBPD<-enrfilter(romicsEnrichement(romics_TMT,statCol_filter = "eBPD_vs_hBPD_Ttest_p" ,statCol_text = "<0.05",statCol_filter2 = "log(eBPD/hBPD)",statCol_text2 = "<0",enrichment_function = "EASE",type = c("GO", "KEGG", "REACTOME") ),pval = 0.05,foldchange = 1,min_feature = 2)
## [1] "Your <query> contained 0 UniProt_IDs and 400 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 400 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 400 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
up_hBPD_vs_ctrl<-enrfilter(romicsEnrichement(romics_TMT,statCol_filter = "hBPD_vs_ctrl_Ttest_p"  ,statCol_text = "<0.05",statCol_filter2 = "log(hBPD/ctrl)" ,statCol_text2 = ">0",enrichment_function = "EASE",type = c("GO", "KEGG", "REACTOME") ),pval = 0.05,foldchange = 1,min_feature = 2)
## [1] "Your <query> contained 0 UniProt_IDs and 45 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 45 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 45 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
down_hBPD_vs_ctrl<-enrfilter(romicsEnrichement(romics_TMT,statCol_filter = "hBPD_vs_ctrl_Ttest_p"  ,statCol_text = "<0.05",statCol_filter2 = "log(hBPD/ctrl)" ,statCol_text2 = "<0",enrichment_function = "EASE",type = c("GO", "KEGG", "REACTOME") ),pval = 0.05,foldchange = 1,min_feature = 2)
## [1] "Your <query> contained 0 UniProt_IDs and 57 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 57 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
## [1] "Your <query> contained 0 UniProt_IDs and 57 UniProt_Accession (some might be redundant)."
## [1] "Your <universe> contained 0 UniProt_IDs and 5739 UniProt_Accession (some might be redundant)."
enrichments_ttest<-rbind(up_eBPD_vs_ctrl,down_eBPD_vs_ctrl,up_eBPD_vs_hBPD,down_eBPD_vs_hBPD,up_hBPD_vs_ctrl,down_hBPD_vs_ctrl)

DT::datatable(enrichments_ttest)
write.csv(enrichments_ttest,file="03_output_files/Enrichment_Ttests.csv",row.names = F)

6 Matrisome

We used the matrisome DB to identify the proteins known to be associated with the extracellular matrix, heatmaps and volcano plots were generated

print("MatrisomeDB")
## [1] "MatrisomeDB"
d<-featureSubset(romics_TMT,t(read.csv(file = "01_source_files/MatrisomeDB_naba_2016_matrix_biology_human_uniprot.csv")))
romicsHeatmap(d,RowSideColor = "eBPD_vs_ctrl_Ttest_p",labRow=rownames(d$data),sample_hclust = F)

romicsHeatmap(d,labRow = rownames(d$data),ANOVA_filter = "p",p = 0.05)

romicsVolcano(d,plot=4,min_fold_change = 0,p_type = "p")
## [1] "'stat_type' was missing 't.test' were used by default"

results_matrixDB<-romicsExportData(d,statistics = T,missing_data = T)
write.csv(results_matrixDB,file = "03_output_files/results_subset_matrisomeDB.csv")

7 Proteins of interest

Some single protein plots were generated for various proteins of interest ## Epithelial cells

Figs<-romics_TMT

p1<-singleVariablePlot(romics_object = Figs,variable ="P16422",y_bracket_pos = 0.2,title = "EPCAM")

print("AT1 markers")
## [1] "AT1 markers"
p1<-singleVariablePlot(romics_object = Figs,variable ="O95171",y_bracket_pos = 0.2,title = "SCEL")
p2<-singleVariablePlot(romics_object = Figs,variable ="Q15109",y_bracket_pos = 0.2,title = "AGER/RAGE")
p3<-singleVariablePlot(romics_object = Figs,variable ="Q8NFJ5",y_bracket_pos = 0.2,title = "GPRC5A")
p4<-singleVariablePlot(romics_object = Figs,variable ="P55087",y_bracket_pos = 0.2,title = "AQP4")
grid.arrange(p1,p2,ncol=2)

grid.arrange(p3,p4,ncol=2)

print("AT2 markers")
## [1] "AT2 markers"
p1<-singleVariablePlot(romics_object = Figs,variable ="Q99758",y_bracket_pos = 0.2,title = "ABCA3")
p2<-singleVariablePlot(romics_object = Figs,variable ="Q9UQV4",y_bracket_pos = 0.2,title = "LAMP3")
p3<-singleVariablePlot(romics_object = Figs,variable ="P11686",y_bracket_pos = 0.2,title = "SFTPC")
p4<-singleVariablePlot(romics_object = Figs,variable ="O96009",y_bracket_pos = 0.2,title = "NAPSA")
grid.arrange(p1,p2,ncol=2)

grid.arrange(p3,p4,ncol=2)

print("airway markers")
## [1] "airway markers"
p1<-singleVariablePlot(romics_object = Figs,variable ="P11684",y_bracket_pos = 0.2,title = "SCGB1A1/Uteroglobin")
p2<-singleVariablePlot(romics_object = Figs,variable ="Q13938",y_bracket_pos = 0.2,title = "CAPS")
grid.arrange(p1,p2,ncol=2)

print("serous cells")
## [1] "serous cells"
p1<-singleVariablePlot(romics_object = Figs,variable ="P02788",y_bracket_pos = 0.2,title = "LTF")

7.1 Endothelial cells

print("General endothelial markers")
## [1] "General endothelial markers"
p1<-singleVariablePlot(romics_object = Figs,variable ="P16284",y_bracket_pos = 0.2,title = "PECAM1")
p2<-singleVariablePlot(romics_object = Figs,variable ="P12830",y_bracket_pos = 0.2,title = "CDH1")
p3<-singleVariablePlot(romics_object = Figs,variable ="O75636",y_bracket_pos = 0.2,title = "FCN3")
p4<-singleVariablePlot(romics_object = Figs,variable ="P17948",y_bracket_pos = 0.2,title = "FLT1")
p5<-singleVariablePlot(romics_object = Figs,variable ="P12821",y_bracket_pos = 0.2,title = "ACE")
p6<-singleVariablePlot(romics_object = Figs,variable ="P11308",y_bracket_pos = 0.2,title = "ERG")
grid.arrange(p1,p2,ncol=2)

grid.arrange(p3,p4,ncol=2)

grid.arrange(p5,p6,ncol=2)

print("Cap cells")
## [1] "Cap cells"
p1<-singleVariablePlot(romics_object = Figs,variable ="P00918",y_bracket_pos = 0.2,title = "CA2")
p2<-singleVariablePlot(romics_object = Figs,variable ="P24530",y_bracket_pos = 0.2,title = "EDNRB")
p3<-singleVariablePlot(romics_object = Figs,variable ="Q9BXM0",y_bracket_pos = 0.2,title = "PRX")
grid.arrange(p1,p2,ncol=2)

grid.arrange(p3,ncol=2)

print("Lymphatics")
## [1] "Lymphatics"
p1<-singleVariablePlot(romics_object = Figs,variable ="Q9Y5Y7",y_bracket_pos = 0.2,title = "LYVE1")
p2<-singleVariablePlot(romics_object = Figs,variable ="Q86Y34",y_bracket_pos = 0.2,title = "ADGRG3")
grid.arrange(p1,p2,ncol=2)

## Mesenchymal markers

print("Vimentin")
## [1] "Vimentin"
p1<-singleVariablePlot(romics_object = Figs,variable ="P08670",y_bracket_pos = 0.2,title = "VIM")
grid.arrange(p1,ncol=2)

print("Smooth muscle markers")
## [1] "Smooth muscle markers"
p1<-singleVariablePlot(romics_object = Figs,variable ="Q01995",y_bracket_pos = 0.2,title = "TAGLN")
p2<-singleVariablePlot(romics_object = Figs,variable ="O75112",y_bracket_pos = 0.2,title = "LDB3")
grid.arrange(p1,p2,ncol=2)

print("Fibroblasts markers")
## [1] "Fibroblasts markers"
p1<-singleVariablePlot(romics_object = Figs,variable ="P04216",y_bracket_pos = 0.2,title = "THY1")
p2<-singleVariablePlot(romics_object = Figs,variable ="Q7Z5L7",y_bracket_pos = 0.2,title = "PODN")
p3<-singleVariablePlot(romics_object = Figs,variable ="O14498",y_bracket_pos = 0.2,title = "ISLR")
grid.arrange(p1,p2,ncol=2)

grid.arrange(p3,ncol=2)

print("AF2")
## [1] "AF2"
p1<-singleVariablePlot(romics_object = Figs,variable ="Q13361",y_bracket_pos = 0.2,title = "MFAP5")
grid.arrange(p1,ncol=2)

7.2 Immune cells

print("Immune cells markers")
## [1] "Immune cells markers"
p1<-singleVariablePlot(romics_object = Figs,variable ="P08575",y_bracket_pos = 0.2,title = "PTPRC/CD45")
grid.arrange(p1,ncol=2)

print("Mast cells markers")
## [1] "Mast cells markers"
p1<-singleVariablePlot(romics_object = Figs,variable ="P15088",y_bracket_pos = 0.2,title = "CPA3")
p2<-singleVariablePlot(romics_object = Figs,variable ="P23946",y_bracket_pos = 0.2,title = "CMA1")
p3<-singleVariablePlot(romics_object = Figs,variable ="O00534",y_bracket_pos = 0.2,title = "VWA5A")
grid.arrange(p1,p2,ncol=2)

grid.arrange(p3,ncol=2)

print("Macrophages")
## [1] "Macrophages"
p1<-singleVariablePlot(romics_object = Figs,variable ="Q9UEW3",y_bracket_pos = 0.2,title = "MARCO")
p2<-singleVariablePlot(romics_object = Figs,variable ="P61626",y_bracket_pos = 0.2,title = "LYZ")
p3<-singleVariablePlot(romics_object = Figs,variable ="P40121",y_bracket_pos = 0.2,title = "CAPG")
p4<-singleVariablePlot(romics_object = Figs,variable ="P22897",y_bracket_pos = 0.2,title = "MRC1")
grid.arrange(p1,p2,ncol=2)

grid.arrange(p3,p4,ncol=2)

## Other proteins of interest

print("Iron transport and ferroptosis - see https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9032171/")
## [1] "Iron transport and ferroptosis - see https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9032171/"
p1<-singleVariablePlot(romics_object = Figs,variable ="O95352",y_bracket_pos = 0.2,title = "ATG7")
p2<-singleVariablePlot(romics_object = Figs,variable ="P00450",y_bracket_pos = 0.2,title = "CP")
p3<-singleVariablePlot(romics_object = Figs,variable ="P02794",y_bracket_pos = 0.2,title = "FTH1")
p4<-singleVariablePlot(romics_object = Figs,variable ="P02792",y_bracket_pos = 0.2,title = "FTL")
p5<-singleVariablePlot(romics_object = Figs,variable ="P02787",y_bracket_pos = 0.2,title = "TF")
p6<-singleVariablePlot(romics_object = Figs,variable ="P16050",y_bracket_pos = 0.2,title = "ALOX15")
p7<-singleVariablePlot(romics_object = Figs,variable ="Q86U28",y_bracket_pos = 0.2,title = "ISCA2")
grid.arrange(p1,p2,ncol=2)

grid.arrange(p3,p4,ncol=2)

grid.arrange(p5,p6,ncol=2)

print("tight junction")
## [1] "tight junction"
p1<-singleVariablePlot(romics_object = Figs,variable ="Q07157",y_bracket_pos = 0.2,title = "TJP1")
p2<-singleVariablePlot(romics_object = Figs,variable ="Q9UDY2",y_bracket_pos = 0.2,title = "TJP2")
p3<-singleVariablePlot(romics_object = Figs,variable ="O00501",y_bracket_pos = 0.2,title = "CLDN5")
p4<-singleVariablePlot(romics_object = Figs,variable ="Q16625",y_bracket_pos = 0.2,title = "OCLN")
p5<-singleVariablePlot(romics_object = Figs,variable ="Q0VF96",y_bracket_pos = 0.2,title = "CGNL1")
p6<-singleVariablePlot(romics_object = Figs,variable ="Q03135",y_bracket_pos = 0.2,title = "CAV1")

grid.arrange(p1,p2,ncol=2)

grid.arrange(p3,p4,ncol=2)

grid.arrange(p5,p6,ncol=2)

8 Export the data

The data was exported for further exploration and to serve as supplementary dataset.

results<-romicsExportData(romics_TMT,statistics = T,missing_data = T)
representativeID=gsub("//;.*","",rownames(results))
results<-merge(results,MaxQuant_IDs,by.x=0, by.y="protein.ids")
results<-cbind(results,representativeID=representativeID)
results<-merge(results,UniProtFasta_info,by.x = "representativeID",by.y="Uniprot_accession")
write.csv(results, file="./03_output_files/results_with_stat.csv")